#ifndef __SCNS_PCF8574_H__
#define __SCNS_PCF8574_H__

#include "ScnsConfig.h"

#if defined(SCNS_PCF8574_ENABLE)&&SCNS_PCF8574_ENABLE==1

#include "ScnsBspPcf8574.h"

#include "ScnsYing.h"

typedef enum
{
    SCNS_PCF8574_STATUS_OK=SCNS_YING_STATUS_OK,
    SCNS_PCF8574_STATUS_BEP_FAILED=SCNS_YING_STATUS_BSP_FAILED,
    SCNS_PCF8574_STATUS_FAILED=SCNS_YING_STATUS_FAILED,
    SCNS_PCF8574_STATUS_TIME_OUT=SCNS_YING_STATUS_TIME_OUT,
    SCNS_PCF8574_STATUS_NOT_INITED,
}ScnsPcf8574Status;

extern ScnsPcf8574Status scnsPcf8574Init(ScnsPcf8574Enum pcf8574N);
extern uint8 scnsPcf8574ReadByte(ScnsPcf8574Enum pcf8574N);
extern void scnsPcf8574WriteByte(ScnsPcf8574Enum pcf8574N,uint8 data);
extern void scnsPcf8574WriteBit(ScnsPcf8574Enum pcf8574N,uint8 bit,uint8 sta);
extern uint8 scnsPcf8574ReadBit(ScnsPcf8574Enum pcf8574N,uint8 bit);
extern void scnsPcf8574Sync(ScnsPcf8574Enum pcf8574N);
#endif
#endif
